﻿namespace PageAdmin.Utils.ORM
{

    /// <summary>
    /// 数据库类型
    /// </summary>
    public enum DataBaseType
    {
        /// <summary>
        /// 1，表示access
        /// </summary>
        Access = 1,
        /// <summary>
        /// 2,mssql
        /// </summary>
        MsSql = 2,
        /// <summary>
        /// 3,mysql，暂未提供代码实现
        /// </summary>
        MySql = 3,
        /// <summary>
        /// 4,orcal，暂未提供代码实现
        /// </summary>
        Oracle = 4,
    }


    /// <summary>
    /// 当前事务状态
    /// </summary>
    public enum TransactionStateEnum
    {

        /// <summary>
        /// 未启用
        /// </summary>
        NotEnabled = 0,

        /// <summary>
        /// 已经开始
        /// </summary>
        Beign = 1,

        /// <summary>
        /// 已经提交了事务
        /// </summary>
        Commited = 2,

        /// <summary>
        /// 已经回滚
        /// </summary>
        RollBack = -1,

    }

    /// <summary>
    /// 数据库数据类型
    /// </summary>
    public enum ColumnDataType
    {

        /// <summary>
        /// System.Int64.64 位的有符号整数。
        /// </summary>
        BigInt = 0,

        /// <summary>
        /// System.String.非 Unicode 字符的固定长度流，范围在 1 到 8,000 个字符之间。
        /// </summary>
        Char = 3,

        /// <summary>
        ///  System.DateTime.日期和时间数据，值范围从 1753 年 1 月 1 日到 9999 年 12 月 31 日，精度为 3.33 毫秒。
        /// </summary>
        DateTime = 4,

        /// <summary>
        ///  System.Decimal.固定精度和小数位数数值，在 -10 38 -1 和 10 38 -1 之间。
        /// </summary>
        Decimal = 5,

        /// <summary>
        /// System.Double.-1.79E +308 到 1.79E +308 范围内的浮点数。
        /// </summary>
        Float = 6,

        /// <summary>
        /// System.Int32.32 位带符号整数。
        /// </summary>
        Int = 8,


        /// <summary>
        ///  System.String.Unicode 字符的固定长度流，范围在 1 到 4,000 个字符之间。
        /// </summary>
        NChar = 10,

        /// <summary>
        ///  System.String.Unicode 字符的可变长度流，范围在 1 到 4,000 个字符之间。如果字符串大于 4,000 个字符，隐式转换会失败。在使用比
        ///  4,000 个字符更长的字符串时，请显式设置对象。当数据库列为 nvarchar(max) 时，使用 System.Data.SqlDbType.NVarChar
        /// </summary>
        NVarChar = 12,

        /// <summary>
        /// System.Int16.16 位带符号整数。
        /// </summary>
        SmallInt = 16,

        /// <summary>
        /// System.Byte.8 位无符号整数。
        /// </summary>
        TinyInt = 20,

        /// <summary>
        ///   System.String.非 Unicode 字符的可变长度流，范围在 1 到 8,000 个字符之间。当数据库列为 varchar(max) 时，使用
        ///   System.Data.SqlDbType.VarChar 。
        /// </summary>
        VarChar = 22,

        /// <summary>
        /// 日期数据，值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。
        /// </summary>
        Date = 31,
        /// <summary>
        ///     基于 24 小时制的时间数据。时间值范围从 00:00:00 到 23:59:59.9999999，精度为 100 毫微秒。对应于 SQL Server
        ///    time 值。
        /// </summary>
        Time = 32,

    }



}